package cn.tedu.egmvc3.controller;

import cn.tedu.egmvc3.mapper.EmpMapper;
import cn.tedu.egmvc3.pojo.dto.EmpInsertDTO;
import cn.tedu.egmvc3.pojo.entity.Emp;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
@RequestMapping("/emp/")
public class EmpController {
    @Autowired
    private EmpMapper empMapper;
    /**
     * 1）添加员工
     * 请求地址： /emp/insert
     * 请求方法： POST
     * 请求体数据： 员工姓名name、员工工资salary、员工岗位job
     * 返回响应： String "添加成功"
     */
    @RequestMapping("insert")
    public String insert(EmpInsertDTO empInsertDTO){
        empMapper.insertEmp(empInsertDTO);
        return "添加成功";
    }
    /**
     * 2）查询所有员工的 姓名和岗位
     * 请求地址： /emp/select
     * 请求方法： GET
     * 查询参数： 无
     * 返回响应： List<EmpVO>
     */
    @RequestMapping("select")
    public List<Emp> select(){
        return empMapper.selectEmp();
    }
    /**
     * 3）修改员工信息
     * 请求地址： /emp/update
     * 请求方法： POST
     * 请求体数据： id=员工编号&name=员工姓名&salary=员工工资&job=员工岗位
     * 返回响应： String "修改成功"
     */
    @RequestMapping("update")
    public String update(Emp emp){
        empMapper.updateEmpById(emp);
        return "修改成功";
    }
    /**
     * 4）删除员工信息
     * 请求地址： /emp/delete?id=员工编号
     * 请求方法： GET
     * 查询参数： id=员工编号
     * 返回响应： 字符串 "删除成功"
     */
    @RequestMapping("delete")
    public String delete(Integer id){
        empMapper.deleteEmpById(id);
        return "删除成功";
    }
}
